Systems, methods, and machine-readable media providing location-enabled group management

ABSTRACT

A computer-executed method for managing a group of entities includes receiving an indication from a first user indicating a desire to add members to the group based on proximity to a target, such as a point of interest (POI) or a location of a person. The method also includes sending an invitation to a prospective group member based on a location of the prospective group member during a time window associated with the target. In response to the invitation, an indication is received from the prospective group member as to whether the prospective group member desires to join the group.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. application Ser. No.12/797,547, entitled “Systems, Methods, and Machine-Readable MediaProviding Location-Enabled Group Management,” filed Jun. 9, 2010, whichclaims the benefit of U.S. Provisional Patent Application No.61/186,612, filed Jun. 12, 2009, and entitled “LOCATION-ENABLED GROUPMANAGEMENT,” both of which are assigned to the assignee hereof and areexpressly incorporated herein by reference.

BACKGROUND

1. Background Field

This disclosure generally relates to managing group parameters usinglocation information and, more specifically, to creation and managementof groups based on location.

2. Relevant Background

Many people are connected to others by virtue of their skills,interests, obligations, or other characteristics. In some cases, aperson chooses to be affiliated with a particular organized group. Inothers, a person can be grouped with others according to the person'scharacteristics, such as a person's skill set or experience.

Modern technology enables group related activities on a significantlyexpanded scale. Prior to the Internet, it was much more difficult tofind, join, and interact with groups. Today, with network-based socialapplications such as MySpace™ and Facebook™, users can create, find, andjoin groups spanning substantially all interests and all locations.

SUMMARY

In one aspect, a computer-executed method for managing a group ofentities is disclosed. The method includes receiving an indication froma first user indicating a desire to add members to the group based onproximity to a target and sending an invitation to a prospective groupmember based on a location of the prospective group member during a timewindow associated with the target. The method also includes receiving anindication from the prospective group member, in response to theinvitation, that the prospective group member desires to join the group.

In another aspect, a tangible machine-readable medium comprisinginstructions, which, when executed by a machine, cause the machine toperform operations is disclosed. The instructions include code toreceive a command from a first mobile device user to add members to asocial group using geolocation as a factor. The instructions also havecode to provide a membership opportunity to a second mobile device user,at least in part, in response to the received command during a timewindow associated with the geolocation factor and code to receive inputfrom the second mobile device user indicating a desire to join thesocial group.

In yet another aspect, a computer system is disclosed. The computersystem includes a first module for interacting with a first mobiledevice user and receiving input from the first mobile device userrequesting that the computer system add members to a social group basedon proximity to a target. A second module interacts with a second mobiledevice user and offering an opportunity for membership in a plurality ofsocial proximity groups during a time window associated with the target.The plurality of social proximity groups include the social group. Athird module adds the second mobile device user as a member of thesocial group in response to input from the second mobile device userrequesting to join the social group.

In another aspect, a computer system includes means for interacting witha first mobile device user and receiving input from the first mobiledevice user requesting that the computer system add members to a socialgroup based on proximity to a target. The computer system also has meansfor interacting with a second mobile device user and offering anopportunity for membership in a plurality of social proximity groupsduring a time window associated with the target. The plurality of socialproximity groups includes the social group. The computer system includesmeans for adding the second mobile device user as a member of the socialgroup in response to input from the second mobile device user requestingto join the social group.

In yet another aspect, a tangible machine-readable medium comprisinginstructions, which, when executed by a machine, cause the machine toperform operations is disclosed. The instructions include code toadminister a network-based social group with a plurality of users, codeto obtain geolocation information associated with the plurality ofusers, and code to apply at least one filter to the geolocationinformation to identify a spatial point of interest of the network-basedsocial group.

The foregoing has outlined rather broadly the features and technicaladvantages of the present disclosure in order that the detaileddescription that follows may be better understood. Additional featuresand advantages will be described hereinafter which form the subject ofthe claims of the disclosure. It should be appreciated by those skilledin the art that the conception and specific embodiments disclosed may bereadily utilized as a basis for modifying or designing other structuresfor carrying out the same purposes of the present disclosure. It shouldalso be realized by those skilled in the art that such equivalentconstructions do not depart from the technology of the disclosure as setforth in the appended claims. The novel features which are believed tobe characteristic of the disclosure, both as to its organization andmethod of operation, together with further objects and advantages willbe better understood from the following description when considered inconnection with the accompanying figures. It is to be expresslyunderstood, however, that each of the figures is provided for thepurpose of illustration and description only and is not intended as adefinition of the limits of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present disclosure, referenceis now made to the following description taken in conjunction with theaccompanying drawings.

FIG. 1 is a simplified block diagram of a communication network of thedisclosed systems and methods.

FIG. 2 is a flow diagram of an example of a process for location-enabledgroup management.

FIG. 3 is a flow diagram of an example of a process for associatinggroup information with particular locations.

FIG. 4 is a flow diagram of an example of a process for proximity groupcreation.

FIG. 5 is a flow diagram of an example of a process for proximity groupcreation.

DETAILED DESCRIPTION

Systems, machine-readable media, and methods disclosed herein providefor managing groups using position information. In some aspects,position information can be used to determine that a device associatedwith a group member is in a location associated with group informationthat is different than the group information for a previous location.The user can be provided with an indication that new group informationis available based on the provided position information.

It should be noted that location information provided by commonpositioning methods such as GPS may also contain a timestamp, andtypically includes additional information such as speed and direction ofmovement. The terms “location” or “position” in this document shall beunderstood to include at least a timestamp in addition to spatialcoordinates, and in some cases application of additional informationsuch as speed/direction will also be discussed for those instances wherethis information may be available.

It should also be noted that location information varies in precision,based on technology used and the conditions when a location isdetermined. In common location determination technologies such as GPS,an estimate of the precision of location information may be availablewith a location. The precision information may be used in algorithms todetermine proximity of two entities. Using the precision information,the probability of two entities being within a prescribed proximity canbe determined, and this probability can be compared to thresholds todetermine what actions to take in the application.

In some aspects, group attributes can be stored and used to determinelocations of interest for a group. Position information can be obtainedfor one or more group members over time. Based on the positioninformation, a particular location can be determined to be a candidatelocation of interest for the group. One or more group members can bequeried to confirm whether the particular location is a location ofinterest for the group. The location of interest can be assigned a nameor other identifier. Advantages of such embodiments may include moreaccurate identification of points of interest, even with less userinput.

Alternatively, a location of interest might only be relevant to a groupat certain times. For example, a sports field might be used for footballpractice at certain times, and soccer practice at other times.Therefore, association with a group can have a temporal parameter inaddition to location.

In some aspects, one or more groups may be created based on proximity.Potential group members may be identified using position information(determined using positioning techniques or based on user input oflocation), based on their proximity to (for example) a device associatedwith a user creating a proximity group. Potential group members mayreceive information indicative of an invitation to join the proximitygroup. A group creator or other entity may review potential new membersto confirm or deny an invitation to join the group, could blockundesired users from becoming group members, or may remove undesiredmembers from the group, or may take other actions to manage the group.Alternate enrollment techniques can be provided. Advantages of suchembodiments may include more relevant and convenient creation of socialgroups by using proximity information or geolocation information as afactor.

In some aspects, one or more proximity groups may be created using bothposition and time constraints. A group creator can access an applicationindicating the desire to create a proximity group. Position andtimestamp information for the creator can be associated with theproximity group. The position and timestamp information for otherdevices can be compared to that of the group creator, and depending onproximity in space and time, potential members can be identified.Optionally, a timer can start, opening a proximity window during whichmembers can join the proximity group. Potential members can access theapplication during the proximity window, and select the group they wantto join. Even if the position of the creator and/or one or more of thepotential group members is not precisely known, by limiting the groupcreation in both position and time, potential group members can selectfrom a limited number of potential groups (most likely a singlepotential group). Users can select the appropriate proximity group, andthe creator can confirm, block, or otherwise manage the groupmembership. Alternate enrollment techniques can be provided.Alternatively, the position and timestamp of other pre-existing groupmembers (in addition to the creator) can be used to establish a“cluster” of members. The cluster can be analyzed in both space andtime, with various techniques such as the average and standard deviationof the locations and timestamps. Other techniques can be used includingthe minimum and maximum values of location and timestamp, or othertechniques. Once the cluster analysis is done, the location and/ortimestamp of other entities that are not already group members can becompared to the range of the cluster, and potential new membersidentified based on comparison to the range. Optionally, the precisioninformation can be used when analyzing the ranges of the cluster, and/orthe precision information can be used for the potential new members whencomparing to the range of the cluster. Depending on the probabilitiesassociated with the precision information, the likelihood that apotential new member is within the range of the cluster can bedetermined, and those above a certain probability can be invited to jointhe group.

Additional techniques can optionally be included in the algorithms fordetermining potential new group members. For example, if a potential newgroup member was within the range of the cluster (space/time), but wasmoving at a high rate of speed during the time of being in proximity,the likelihood of group membership is lower. Similarly, the dwell timewhile in the range of the cluster can be used to increase confidence ofgroup membership. For example, if the cluster of the group spans acertain area in space during a one hour time window, and a potential newgroup member was in that area for 50 minutes of that time, it is morelikely that they are a valid group member than if they dwelled in thatarea for 10 minutes of the hour.

Systems and techniques herein provide for location-enabled groupmanagement. As noted above, individuals can have skills, interests,obligations, and/or other characteristics that lead to membership orinclusion in groups. In an individual's local environment, he or sheusually develops group contacts over time. As a result, the individualsets up a personal information environment to have access to theappropriate group information as needed.

A person can participate in a particular group using an application suchas the social networking site Facebook™, the group's web site or emailgroup, personal contact with group members, the mail, or any othercommunication method. Participation is generally set up around theperson's primary location (usually home), because geospatial proximityis often a meaningful element in group identity. Large serviceorganizations, for example, may have localized affiliations. If someonehas a specific interest, such as in a particular musician or activity,it may be more meaningful to interact with others who are nearby, eitherto share local knowledge or to coordinate a particular groupactivity—e.g., a concert, or bike ride.

While the Internet reduces limitations to interaction caused by physicaldistance, it is telling that many very active portals are organized torecognize the inherent meaningfulness of location—Craig's List™, Evite™,and CitySearch™, for example; not only as local indices, but to fosterand facilitate non-web based activities.

Currently, different techniques may be used when an individual'slocation changes. In some contexts, it is fairly easy. One can presentone's credentials at the new local affiliate, transfer membership, orbrowse to a different location on the Web.

However, even these techniques can present challenges. For example, itis possible to research location-specific Internet sites and groupcontacts prior to a trip, but doing so takes effort and forethought.Additionally, it can be much more challenging and time consuming toidentify and gain access to a new social group or network.

Various embodiments use the fact that mobile phones may have a one toone association with an individual (in contrast to residential landlines), so that it is possible to combine that individual's groupaffiliations based on geolocation information for a user's mobile phone.For example, if a person has an attribute as Grateful Dead fan, thatperson could automatically be added to a Chicago-area Grateful Deadinterest group upon arrival on a tourist visit to Chicago and thus couldlearn about a bootleg recording swap happening in the Loop that evening.Thus, such embodiments employ additional parameters beyond space/timefor the “matching” functions.

In another example embodiment, a person with a particular skill willgenerally be known in his or her primary location, so that anyone inneed of the skill will know how to contact the person. However, when theperson is traveling or relocates, contact is more difficult. Forexample, a surgeon with an unusual medical specialty could be calledupon by nearby medical facilities while on travel.

FIG. 1 shows a system 100 for location enabled group management,according to some embodiments. A mobile device 110 is associated with aparticular user, and communicates with a base station 120 of a cellularnetwork associated with the user's mobile service provider. The mobiledevice 110 may also be configured to communicate with one or moredevices 130 (e.g., wireless access points) of a short range wirelessnetwork using a wireless interface and communication protocol such asWiFi, Bluetooth™, etc.

Associated with the cellular and short range networks is one or morenetwork devices 140 including a memory 142 storing group attributesassociated with the particular user. In some implementations, thenetwork device 140 can be associated with the user's mobile serviceprovider, or can be associated with an application separate from themobile service provider (e.g., a server affiliated with socialnetworking application Facebook™ or other application).

The system 100 further includes a location server 150 that can be usedin some implementations. The location server 150 can be used in someimplementations of the current disclosure; particularly when location isdetermined using an assisted satellite positioning technique (forexample, assisted global positioning system (A-GPS)). The locationserver 150 can provide assistance information to the mobile device 110,can perform position determination using pseudorange information fromthe mobile device 110, and/or perform other assistance functions. Thelocation server 150 can provide location information to the mobiledevice 110 and/or to the network device 140. Although the exampleillustrated in FIG. 1 shows both a network device 140 and a locationserver 150 associated with a cellular network and a short range wirelessnetwork, many implementations are possible. For example, the locationserver 150 associated with the short range wireless network in FIG. 1may be omitted.

While the mobile device 110 is shown as a cellular phone, the scope ofembodiments is not so limited. As used herein, a mobile device refers toa device such as a cellular or other wireless communication device,personal communication system (PCS) device, personal navigation device(PND), Personal Information Manager (PIM), Personal Digital Assistant(PDA), laptop or other suitable mobile device capable of receivingwireless communication and/or navigation signals. Mobile devices alsomay include devices which communicate with a personal navigation device(PND), such as by short-range wireless, infrared, wireline connection,or other connection—regardless of whether satellite signal reception,assistance data reception, and/or position-related processing occurs atthe device or at the PND. Also, mobile devices may include all devices,including wireless communication devices, computers, laptops, etc. whichare capable of communication with a server, such as via the Internet,Wi-Fi, or other network, and regardless of whether satellite signalreception, assistance data reception, and/or position-related processingoccurs at the device, at a server, or at another device associated withthe network. Any operable combination of the above may also beconsidered a mobile device.

In various embodiments, proximity may be determined based on the grouphaving common reception of signals in a local area (for example alldevices are hearing a certain WiFi access point) and/or by peer-to-peersignaling such as hearing the Bluetooth signal between proximatedevices. With these techniques, actual location coordinates are notused, as it is instead determined that members are hearing the samesignals. The determination of hearing the same signals is used as aproxy for location coordinates. This means that devices without locationcapability can participate in the system. The techniques can also bemixed—for example, some of the devices may determine their locationusing GPS technology, while other devices are simply determined to be inproximity of those devices because they are hearing a common signal suchas a WiFi access point.

FIG. 2 shows a process 200 that can be used for location enabled groupmanagement, according to some embodiments. Referring to FIGS. 1 and 2,at 210, a position location operation can be performed for the mobiledevice 110. The position location operation can be a satellitepositioning operation (e.g., assisted GPS), a terrestrial rangingpositioning operation (e.g., Advanced Forward Link Trilateration orother terrestrial operation using terrestrial ranging measurements), orother relatively precise positioning operation. In some implementations,the position location operation may be a simpler operation such as anidentification of the serving cell of the mobile device 110, theposition of the cell sector center, or other less precise locationoperation. In different embodiments, the desired precision of theposition location operation differs and the techniques that can be useddiffer accordingly.

At 220, position information is received at the network device 140. Theposition information may be provided through the user's mobile serviceprovider infrastructure (with appropriate permissions in place, if thenetwork device 140 is external to the service provider), or may beprovided by the mobile device 110 (e.g., using SMS or communication withthe wireless device 130), in some examples.

At 230, the position information is used to determine whether new groupinformation is implicated. For example, if the mobile device 110 is inclose proximity to a point of interest or another person, then themobile device 110 may be a candidate for a new group, i.e., new groupinformation would be available. In another example, the positioninformation may be compared to a “home” region to determine whether theuser is outside the home region. If the user is within his home region,new group information is not implicated, and the process may end at 235until a new position location operation is performed or other time. Ifthe user is outside this region, and different group information relatedto the user's existing group attributes is available, new groupinformation may be implicated.

If, new group information is available, at 240 an indicator is providedletting the user know that new group information corresponding to theuser's position information is available.

Process 200 can be implemented in a number of ways. For example, for animplementation involving a social networking site such as Facebook™ thenew group information can modify the user interface presented when theuser logs into his or her Facebook™ account. The user interface caninclude an indicator that a new location has been detected and includeuser-selectable options to perform actions related to new groupinformation.

In the example of a Grateful Dead fan traveling to Chicago noted above,the user interface can allow the user to select (perhaps temporary)membership in related groups in the Chicago area, may allow the user toselect an option of upcoming events for related groups in the Chicagoarea, may allow the user to select an option of services related to thegroup in the Chicago area, or other action. The user may also beprovided with the option of indicating a time during which the user isexpected to be at that location (e.g., the user indicates that he or sheis in Chicago for a week, so he or she can view group-related eventsscheduled for the upcoming week but not subsequent events).

Other aspects of the current disclosure relate to using groupings todetermine locations of interest to a group. One example method usesgroup members “voting with their feet” via their location informationcollected in the background via their mobile devices over the course oftheir normal activities. In some instances, it may take a relativelylong time for the activities of an individual to generate meaningfulpatterns, but in aggregate, the location data generated by a number ofpeople sharing some group attribute(s) may identify those patternsrelatively quickly.

In an example implementation, location information from mobile devicesof individuals associated by group attributes is aggregated and analyzedusing pattern detection algorithms to identify POIs (points of interest)specific to the group. For example, if more than half of the group isco-located within a given period (e.g., a group of soccer moms at asoccer field at the same time), that location would be tagged as a grouplocation that may be used to schedule and map future activities (e.g.,next week's soccer game is “Here”). As another example, the system mightnotice that there has been a large number of visits over an extendedperiod of time to a particular location by members of an interest group(such as collectors of rare jazz recordings). The system notifies amember of that group who is in proximity to that location that there isa group POI nearby, perhaps a used record store with a large selectionof rare jazz recordings.

Given the concepts above, group membership attributes can propagate fromentity to entity. For example, a group is initially formed by a creatorinviting people who are in proximity; the group is named as being a“soccer” interest group; the soccer field is identified as a POI for thesoccer group. Later visitors to the soccer field can be identified asmembers of the soccer group; some of the members may visit anothersoccer field, causing it to be identified as another soccer related POI,and so forth.

When detecting places of interest by monitoring location patterns ofusers, time filters can be valuable in some instances. Time filtersallow a system to focus on places where one or more users stop and dwellfor at least a certain amount of time, and the system can disregardlocation data that does not meet the specifications of the time filter.Once “dwell locations” are known, the system can analyze which of thedwell locations are common to multiple group members.

FIG. 3 shows an example implementation of a process 300 directed to theabove aspect of the disclosure. Referring to FIGS. 1 and 3, at 310,group attributes for multiple users are stored on the network device140, indicating that the users are part of a particular group (forillustrative purposes, a particular family). At 320, positioninformation is obtained from the mobile devices 110 associated withdifferent family members in an ongoing manner. At 330, the positioninformation is used to determine whether a particular location isimplicated as a location of interest to the family. Additionally, timeinformation may aid in the determination that a particular location maybe a location of interest, and may be used to provide a preliminarysuggestion of a name for the location of interest. At 340, one or moregroup members is provided with a query requesting confirmation that theposition is a position of interest, requesting a name for the location,and/or requesting confirmation of a suggested name.

In an example, the position information for a family can indicate that aparticular location is a family residence by noting that the mobiledevices of particular family members are generally located at thelocation at night before powering down and again when the mobile devicesare turned on the following morning. A user may be presented with aquery (either at the mobile device or when accessing an application viathe Internet or other manner) asking if the particular location is alocation of interest. The query may ask for a name and/or may present asuggested name to associate with the location. For the current example,the name of the location may be suggested as “[Last name] Home.” Theuser may affirm the suggested name or may use a different name (e.g.,may modify the name to be “[First Name, Last Name] Home” when there aredifferent residences corresponding to family members with the same lastname). Similarly, pattern recognition may suggest a user's school oroffice as a location of interest based on the times during which theuser is at the location.

Other less standard locations may also be suggested as locations ofinterest based on pattern recognition. For example, a favoriterestaurant may be visited only once a month by a particular familymember, but the aggregate group behavior may indicate that therestaurant is a place of interest for the entire family. One or morefamily members may be queried to determine if the location is a locationof interest to the family based on the detected aggregate groupbehavior. In the example where the location is also a public locationsuch as a business or other known point of interest, the suggested namemay be the known name for the location. In some implementations, thelocation enabled group application may interact with other applications,such as a navigation application, to access related information such asnames for points of interest, driving directions, hours of operation,and/or the like.

The above technique can provide group-tailored points of interest thatadapt to the behaviors of a group over time. The techniques can apply tomany types of groups in addition to families. Using the example of aGrateful Dead fan group again, the aggregate group behavior may indicatethat a particular restaurant is a potential point of interest for thegroup. If the restaurant is a location related to the group, one or moreusers can indicate the association and create or approve a name for thelocation. If the restaurant is not related to the group (e.g., it is apopular restaurant that happens to be frequented by group members but isunrelated to group activities), the user(s) may decline to associate thelocation with the group. In some implementations, the user can designatethe location as a personal point of interest, or designate it as a pointof interest for a different group (e.g., a family group) instead of orin addition to designating the location as a point of interest for thesuggested group.

In another aspect, various embodiments enable group creation usinglocation. To create groups, the initial creation can be performed by aparticular person, and then members are added by an administrator or bythe users themselves. In other aspects, groups are defined by proximity.

FIG. 4 shows a method 400 to create a group using location information.Referring to FIGS. 1 and 4, at 410 a user may indicate that he wouldlike to create a group based on spatial proximity. At 420, a groupinvitation may be sent to prospective group members based on theirproximity to the group creator. At 430, prospective group members whodid not receive an invitation (e.g., users without the required locationcapability or who for some other reason did not receive the invitation)can access the appropriate group application and join the group. At 440,if some unintended users join or attempt to join the group, the groupcreator can block or remove them from the group membership.

Different techniques can be used to determine who is sent an invitationto join the group. One technique creates a wireless proximity networksuch as a Bluetooth™ proximity network. Another technique uses thesatellite position system derived location or other location reportedfrom mobile devices and employs the location information to suggestgroup members.

Because of technical and privacy issues, techniques that do not requireprecise location information and do not implicate privacy concerns mayprovide a benefit. The process 500 of FIG. 5 illustrates an exampleimplementation that allows for proximity group creation and uses somelocation information, time information, and user opt-in to mitigatethose concerns.

At 510, at a first time a group creator accesses an application thatallows for proximity group creation and indicates a proximity group isdesired. The creator can provide a group name, or the group identifiercan be the creator's name, phone number, or other identifier. At 515,position information for the group creator is associated with theproximity group, but need not be highly accurate position information.For example, rather than using information accurate to within a fewfeet, some embodiments may use position information at the level ofgranularity of a city, a campus, a county, or other geographicallocation. At 520, the group creation application starts a membershiptimer that allows proximate users to join within a proximity window(e.g., a fifteen minute window). The proximity window defines the amountof time potential members can opt into the group based on proximity.

At 525, users who want to join the group access the application andindicate they want to join a proximity group. At 530, the applicationaccesses position information for the users, and determines whatproximity groups have been created within the proximity window andwithin a position uncertainty window of the group creator. At 535, theusers are presented with a list of possible proximity groups (perhapswith only the group of interest), and at 540 the users join the group byselecting the appropriate group. Users who do not have mobile deviceaccess to the application (or are unable to join at that time for otherreasons) can join the group at a later time; e.g., accessing theapplication via the Internet from home. The above technique mitigatesthe privacy issues by providing for user opt-in and mitigates theproximity uncertainty issues by limiting the group creation bothspatially and temporally. Other options may be provided; for example,users may be provided with the ability to enter location information(instead of or in addition to providing position information based ondevice positioning techniques), the group creator can have confirmationcontrol of potential members, and/or other options.

Thus, in various embodiments herein, users do not see each other'slocations, thereby enhancing privacy. In such embodiments, at most, agroup administrator can be shown data regarding proximity to a locationand/or proximity to other members (or himself/herself).

In some embodiments, when a point of interest is associated with agroup, membership invitations are sent to non-members based solely or inpart on such non-members being in proximity to the point of interest.When multiple members are at the point of interest, it can sometimes beassumed that a gathering of the group is occurring, and there is anincreased likelihood that other people in proximity are potentiallygroup members. Thus, in another technique, new member invitations aregenerated when other members are also at the point of interest and agathering is likely.

The existence of a group in association with a point of interest may bepublished in a database so that potential members may request availablegroup membership for locations that they visit. The request formembership may be processed in any of a variety of ways, such as beingreviewed by an administrator, being subject to additional rules, and/ordepending on the security/privacy settings of the group.

In some implementations, an adaptable opt-in proximity window mayprovide an appropriate proximity window for a given situation. In aparticular example, a large group of people is attending a rock concert.People who actually attend the rock concert are offered video, and thatcontent is available for attendees who opt in. Because of the largenumber of attendees, providing a larger proximity window (more time toopt-in) can help mitigate any bandwidth issues related to many peopletrying to access a group application using the cellular network at onetime. Furthermore, an opt-in window can be defined independently of theproximity window. For example, a person may be allowed to opt-in to agroup at any time, or during a longer time window, as long as suchperson was at the location during the proximity window.

The scope of embodiments is not limited to the examples above, as someembodiments may employ one or more other techniques. For instance, manydifferent spatial and temporal analyses can determine the “affinity”between potential group members. In one example, a system starts with a“strawman” for the area of interest and the timeframe of interest toidentify a set of entities that might be formed into a group (entitiesusually being people, but may also be businesses or other entities thatare at or near a place). After a strawman is established, a candidateentity set is determined. Once the candidate entity set is determined,analyses are performed across the locations of the entities and thetemporal data for the locations of the entities. A search occurs for“clustering” of locations and/or the times of the locations in thedataset. After clusters are identified, the system detects certainentities whose locations and/or temporal data are not as closelyclustered as most of the other entities. Such entities might beeliminated from the candidate set based on system parameters, might beflagged for closer review by administrators than other entities, and/ormight be subjected to additional rules to determine membership. On theother hand, clustered members in space and/or time may be recognized ashaving some affinity. The system may also detect that there are multipleclusters, which may indicate different groups or sub-groups. In anyevent, groups may be formed from the clusters.

Various wireless communication networks based on infrared, radio, and/ormicrowave technology can be used to implement the described techniques.Such networks can include, for example, a wireless wide area network(WWAN), a wireless local area network (WLAN), a wireless personal areanetwork (WPAN), and so on. A WWAN may be a Code Division Multiple Access(CDMA) network, a Time Division Multiple Access (TDMA) network, aFrequency Division Multiple Access (FDMA) network, an OrthogonalFrequency Division Multiple Access (OFDMA) network, a Single-CarrierFrequency Division Multiple Access (SCFDMA) network, and so on. A CDMAnetwork may implement one or more radio access technologies (RATs) suchas cdma2000, Wideband-CDMA (W-CDMA), and so on. Cdma2000 includes IS-95,IS-2000, and IS-856 standards. A TDMA network may implement GlobalSystem for Mobile Communications (GSM), Digital Advanced Mobile PhoneSystem (D-AMPS), or some other RAT. GSM and WCDMA are described indocuments from a consortium named “3rd Generation Partnership Project”(3GPP). Cdma2000 is described in documents from a consortium named “3rdGeneration Partnership Project 2” (3GPP2). 3GPP and 3GPP2 documents arepublicly available. A WLAN may be an IEEE 802.11x network, and a WPANmay be a Bluetooth network, an IEEE 802.15x, or some other type ofnetwork. The techniques may also be used for any combination of WWAN,WLAN and/or WPAN. Position determination techniques described herein maybe implemented in conjunction with various wireless communicationnetworks such as a WWAN, a WLAN, a WPAN, and so on.

Furthermore, various embodiments may employ a satellite positioningsystem (SPS) for position determination. An SPS typically includes asystem of transmitters positioned to enable entities to determine theirlocation on or above the Earth based, at least in part, on signalsreceived from the transmitters. Such a transmitter typically transmits asignal marked with a repeating pseudo-random noise (PN) code of a setnumber of chips and may be located on ground based control stations,user equipment and/or space vehicles. In a particular example, suchtransmitters may be located on Earth orbiting satellite vehicles (SVs).For example, a SV in a constellation of Global Navigation SatelliteSystem (GNSS) such as Global Positioning System (GPS), Galileo, Glonassor Compass may transmit a signal marked with a PN code that isdistinguishable from PN codes transmitted by other SVs in theconstellation (e.g., using different PN codes for each satellite as inGPS or using the same code on different frequencies as in Glonass). Inaccordance with certain aspects, the techniques presented herein are notrestricted to global systems (e.g., GNSS) for SPS. For example, thetechniques provided herein may be applied to or otherwise enabled foruse in various regional systems, such as, e.g., Quasi-Zenith SatelliteSystem (QZSS) over Japan, Indian Regional Navigational Satellite System(IRNSS) over India, Beidou over China, etc., and/or various augmentationsystems (e.g., an Satellite Based Augmentation System (SBAS)) that maybe associated with or otherwise enabled for use with one or more globaland/or regional navigation satellite systems. By way of example but notlimitation, an SBAS may include an augmentation system(s) that providesintegrity information, differential corrections, etc., such as, e.g.,Wide Area Augmentation System (WAAS), European Geostationary NavigationOverlay Service (EGNOS), Multi-functional Satellite Augmentation System(MSAS), GPS Aided Geo Augmented Navigation or GPS and Geo AugmentedNavigation system (GAGAN), and/or the like. Thus, as used herein an SPSmay include any combination of one or more global and/or regionalnavigation satellite systems and/or augmentation systems, and SPSsignals may include SPS, SPS-like, and/or other signals associated withsuch one or more SPS.

Those skilled in the art will understand that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example: data, information, signals, bits, symbols,chips, instructions, and commands may be referenced throughout the abovedescription. These may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

In one or more exemplary embodiments, the functions and processesdescribed may be implemented in hardware, software, firmware, or anycombination thereof. If implemented in software, the functions may bestored on or transmitted over as one or more instructions or code on acomputer-readable medium. Computer-readable media includes both computerstorage media and communication media including any medium thatfacilitates transfer of a computer program from one place to another. Astorage media may be any available media that can be accessed by acomputer. By way of example, and not limitation, such computer-readablemedia can comprise RAM, ROM, EEPROM, CD-ROM or other optical diskstorage, magnetic disk storage or other magnetic storage devices, or anyother medium that can be used to carry or store desired program code inthe form of instructions or data structures and that can be accessed bya computer. Disk and disc, as used herein, includes compact disc (CD),laser disc, optical disc, digital versatile disc (DVD), floppy disk andblu-ray disc where disks usually reproduce data magnetically, whilediscs reproduce data optically with lasers. Combinations of the aboveshould also be included within the scope of computer-readable media. Theterm “control logic” used herein applies to software (in whichfunctionality is implemented by instructions stored on a machinereadable medium to be executed using a processor), hardware (in whichfunctionality is implemented using circuitry such as logic gates), wherethe circuitry is configured to provide particular output for particularinput, and firmware (in which functionality is implemented usingre-programmable circuitry), and also applies to combinations of one ormore of software, hardware, and firmware.

For a firmware and/or software implementation, the methodologies may beimplemented with modules (e.g., procedures, functions, and so on) thatperform the functions described herein. Any machine readable mediumtangibly embodying instructions may be used in implementing themethodologies described herein. For example, software codes may bestored in a memory, for example the memory of mobile station, andexecuted by a processor, for example the microprocessor of a desktopcomputer, laptop computer, server computer, mobile device, and/or thelike. Memory may be implemented within the processor or external to theprocessor. As used herein the term “memory” refers to any type of longterm, short term, volatile, nonvolatile, or other memory and is not tobe limited to any particular type of memory or number of memories, ortype of media upon which memory is stored.

Moreover, the previous description of the disclosed implementations isprovided to enable any person skilled in the art to make or use thepresent disclosure. Various modifications to these implementations willbe readily apparent to those skilled in the art, and the genericprinciples defined herein may be applied to other implementationswithout departing from the spirit or scope of the disclosure. Thus, thepresent disclosure is not intended to be limited to the features shownherein but is to be accorded the widest scope consistent with theprinciples and novel features disclosed herein.

Although the present disclosure and its advantages have been describedin detail, it should be understood that various changes, substitutionsand alterations can be made herein without departing from the technologyof the disclosure as defined by the appended claims. Moreover, the scopeof the present application is not intended to be limited to theparticular embodiments of the process, machine, manufacture, compositionof matter, means, methods and steps described in the specification. Asone of ordinary skill in the art will readily appreciate from thedisclosure, processes, machines, manufacture, compositions of matter,means, methods, or steps, presently existing or later to be developedthat perform substantially the same function or achieve substantiallythe same result as the corresponding embodiments described herein may beutilized according to the present disclosure. Accordingly, the appendedclaims are intended to include within their scope such processes,machines, manufacture, compositions of matter, means, methods, or steps.

What is claimed is:
 1. A computer-executed method for managing a groupof entities, the method comprising: receiving an indication from a firstuser indicating a desire to add at least one prospective member to thegroup based on proximity of the at least one prospective member to ageographic target; sending an invitation to the at least one prospectivegroup member, based on a location of the at least one prospective groupmember, wherein the at least one prospective group member is associatedwith the geographic target during a predetermined time window; andreceiving an indication from the at least one prospective group member,in response to the invitation, that the at least one prospective groupmember desires to join the group.
 2. The method of claim 1 in whichsending an invitation to the at least one prospective group membercomprises: creating a list of proximity groups within a position window,the list including, at least, an indication of the proximity groups; andsending the list of proximity groups to the at least one prospectivegroup member.
 3. The method of claim 2 in which receiving an indicationfrom the at least one prospective group member comprises: receiving anindication of a selection of a proximity group from the list ofproximity groups, by the at least one prospective group member.
 4. Themethod of claim 1 in which the invitation is limited by a response timewindow and a position uncertainty window relative to a location of thefirst user, the at least one prospective group member being locatedwithin the position uncertainty window.
 5. The method of claim 1 inwhich receiving an indication from the first user comprises: receivingat least one of a group name, identifying information of the first user,and position location information of the first user.
 6. The method ofclaim 1 in which the target comprises one of a point of interest (POI)and a group member location.
 7. The method of claim 1 in which theinvitation does not reveal a location of the first user.
 8. The methodof claim 1 in which the first user is not informed of a location of theat least one prospective group member.
 9. The method of claim 1 in whichthe invitation is sent to the at least one prospective group member inresponse to an indication that the at least one prospective group memberis near an established point of interest of the group and an indicationthat at least one member of the group is also proximate the point ofinterest.
 10. The method of claim 1 in which the group is one of aplurality of proximity groups, and further in which the methodcomprises: creating a strawman for an area and time of interest; usingthe area and time of interest, identifying a set of candidate entities,each of the entities being potential members of at least one of theproximity groups; searching for clustering of locations and timesassociated with the candidate entities; and eliminating candidateentities not associated with the clustering and creating the pluralityof proximity groups from candidate entities associated with theclustering.
 11. A non-transitory tangible machine-readable mediumcomprising instructions, which, when executed by a machine, cause themachine to perform operations, the instructions comprising: code toreceive a command from a first mobile device user to add at least oneprospective member to a social group using proximity to a geographictarget; code to provide a membership opportunity to at least a secondmobile device user, at least in part, in response to the receivedcommand, wherein the at least second mobile device user is associatedwith the geographic target during a predetermined time window; and codeto receive input from the at least one second mobile device userindicating a desire to join the social group.
 12. The non-transitorytangible machine-readable medium of claim 11 further comprising: codefor granting membership to the at least one second mobile device user.13. The non-transitory tangible machine-readable medium of claim 12 inwhich the code for granting membership includes at least one of: codefor applying at least one rule to the input from the at least one secondmobile device user; and code for applying administrator input.
 14. Thenon-transitory tangible machine-readable medium of claim 11 in which thecode providing a membership opportunity comprises: code applying aresponse time window to the membership opportunity, the response timewindow defining a time period in which the opportunity may be actedupon.
 15. The non-transitory tangible machine-readable medium of claim14 in which a length of the response time window is adaptable to aparticular context.
 16. The non-transitory tangible machine-readablemedium of claim 11 in which the code providing a membership opportunitycomprises: code discerning that the at least one second mobile deviceuser is in a geographical area of proximity to the first mobile deviceuser.
 17. A computer system comprising: a first module for interactingwith a first mobile device user and receiving input from the firstmobile device user requesting that the computer system add at least oneprospective member to a social group based on proximity to a geographictarget; a second module interacting with at least a second mobile deviceuser and offering an opportunity for membership in a plurality of socialproximity groups, wherein the at least one second mobile device user isassociated with the geographic target during a predetermined timewindow, the plurality of social proximity groups including the socialgroup; and a third module adding the at least one second mobile deviceuser as a member of the social group in response to input from the atleast one second mobile device user requesting to join the social group.18. The computer system of claim 17 comprising a location serverconfigured to track a location of the first mobile device user and alocation of the at least one second mobile device user.
 19. The computersystem of claim 17 comprising: a server computer with a memory thatstores membership attributes associated with the first mobile deviceuser and the at least one second mobile device user.
 20. A computersystem comprising: means for interacting with a first mobile device userand receiving input from the first mobile device user requesting thatthe computer system add at least one member to a social group based onproximity to a geographic target; means for interacting with at least asecond mobile device user and offering an opportunity for membership ina plurality of social proximity groups, wherein the at least one secondmobile device user is associated with the geographic target during apredetermined time window, the plurality of social proximity groupsincluding the social group; and means for adding the at least one secondmobile device user as a member of the social group in response to inputfrom the at least one second mobile device user requesting to join thesocial group.